• A new command "image" displays 2D arrays as grayscale or color images. See the file "Image.doc" for more details.
• A new command "plotline" specifies line plots for 1D arrays.
• Sub arrays can be selected using the syntax [lo:hi].
• The table command can now automatically print a 1D or 2D array.
• The read and write functions have been improved and now support binary formats. See the file "Datafiles.doc" for more details.
• Background computation.
• PICTs can be pasted into the plot window.
Bug Fixes:
• det() no longer crashes for undefined arrays.
• dim[] no longer crashes on a recursive dimension expression.
• A while loop can now be stopped with command period.
• The parser now correctly recovers from some "missing expression" syntax errors that had previously caused problems.
• Scroll bar oddities fixed.
• The read function now works on system 6 with or without Multifinder.
Documentation changes:
• The file "MathPad.doc" has been updated to include examples of version 2.1 features.
• The files "Image.doc" and "Datafiles.doc" have been added.
• A new example "Complex Roots" gives formulas for quadratic and cubic roots and shows using the image command to visualize a complex function.
• The example "Navigation" now uses a PICT and has been changed to improve its speed.
------------------- version history --------------------------
MathPad 2.0 Changes
MathPad 2.0 keeps the same small memory requirement but adds several refinements and new capabilities since version 1.5. See the file "MathPad.doc" for details on how to use the new features.
New capabilities:
• Support for general purpose arrays allows calculations involving vectors, complex numbers, matrix algebra etc.
• A built-in determinant function allows solutions of systems of equations.
• Read and write functions allow import and export of large data sets.
• Support for iteration allows more efficient implementation of some algorithms including numerical solution of differential equations.
• The table command now allows multi column tables.
• A random number function is now built-in .
New plotting features:
• The plot command can now plot points from an array
• Support for parametric plots: x(t) vs. y(t)
• Optional autoranging
• A mouse click in the plot window now gives the coordinates of the nearest plotted point instead of re-evaluating the function.
• Plot clicks show the trace number.
• The "label" statement implements auto updating plot labels
User interface refinements:
• Multiple open documents are allowed.
• A zoom box is implemented for the text and plot window.
• The cursor switches to I-beam when in the text window.
Convenience features:
• An online help file can be opened as a separate window.
• Long expressions can be continued on the next line by putting a return after an operator or a comma.
• The Edit menu now has a text search "Find..." command.
• An '=' at the end of a line is converted to a ':' (Beginning users often guess that '=' is used to ask for the answer).
• Text after ':' is deleted before re-evaluation in more cases. (Editing sometimes leaves trailing results which are now cleaned up before re-evaluation).
• Evaluation does not auto scroll the cursor into view unless there is an error.
• The '#' character can be used to refer to the last result.
• A less verbose error printout is used for unknowns.
• The '~' character can be used to delimit multi-line comments
Compatabillity issues:
Documents made with MathPad 1.5 will probably work fine with 2.0. There are however, some differences that could cause confusion:
• Assertions and multiple definitions of the same variable are no longer allowed. This feature was rarely used and became impractical with the addition of arrays.
• The table command does not automatically include a column for N. To get equivalent behavior "table f(N)" would be re-written as
"table N,f(N)".
• Version 1.5 allowed square brackets [] for comments. They are now reserved for array indexing. Version 2.0 uses '~' for block comments.
• Version 2.0 autoranges plots when no value is given for Xmin, Xmax, Ymin, and Ymax. Version 1.5 defaulted plot ranges to 0.0 to 1.0.
• Built-in names for new functions could conflict with existing user variable names. New reserved names: det dim label rand read while write.